From: Jasper St. Pierre Date: Wed, 17 Jul 2013 05:10:42 +0000 (-0400) Subject: network: Don't pass a list of connections to the devices X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~3853 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=39bff8bfbcd751e0f66fb40b7147cb729973fe93;p=gnome-shell.git network: Don't pass a list of connections to the devices Instead, just add them after they're constructed. This allows us to not have to pass the connections to each device, and prevents issues with having to enumerate the connections in the middle of construction. https://bugzilla.gnome.org/show_bug.cgi?id=704670 --- diff --git a/js/ui/status/network.js b/js/ui/status/network.js index 21a6d51b8..f80f53ab9 100644 --- a/js/ui/status/network.js +++ b/js/ui/status/network.js @@ -117,12 +117,11 @@ const NMDevice = new Lang.Class({ Name: 'NMDevice', Abstract: true, - _init: function(client, device, connections) { + _init: function(client, device) { this._client = client; this._setDevice(device); this._connections = []; - connections.forEach(Lang.bind(this, this.checkConnection)); this._activeConnection = null; this._activeConnectionItem = null; @@ -463,7 +462,8 @@ const NMDeviceModem = new Lang.Class({ Extends: NMDevice, category: NMConnectionCategory.WWAN, - _init: function(client, device, connections) { + _init: function(client, device) { + this.parent(client, device); device._description = _("Mobile broadband"); this.mobileDevice = null; @@ -497,8 +497,6 @@ const NMDeviceModem = new Lang.Class({ this.emit('icon-changed'); })); } - - this.parent(client, device, connections); }, destroy: function() { @@ -565,13 +563,11 @@ const NMDeviceModem = new Lang.Class({ const NMDeviceBluetooth = new Lang.Class({ Name: 'NMDeviceBluetooth', Extends: NMDevice, + category: NMConnectionCategory.WWAN, - _init: function(client, device, connections) { + _init: function(client, device) { + this.parent(client, device); device._description = _("Bluetooth"); - - this.category = NMConnectionCategory.WWAN; - - this.parent(client, device, connections); }, _activateAutomaticConnection: function() { @@ -595,14 +591,13 @@ const NMDeviceBluetooth = new Lang.Class({ const NMDeviceWireless = new Lang.Class({ Name: 'NMDeviceWireless', Extends: NMDevice, + category: NMConnectionCategory.WIRELESS, - _init: function(client, device, connections) { - this.category = NMConnectionCategory.WIRELESS; + _init: function(client, device) { + this.parent(client, device); this._networks = [ ]; - this.parent(client, device, connections); - let accessPoints = device.get_access_points() || [ ]; accessPoints.forEach(Lang.bind(this, function(ap) { this._accessPointAdded(this._device, ap); @@ -1378,12 +1373,16 @@ const NMApplet = new Lang.Class({ let wrapperClass = this._dtypes[device.get_device_type()]; if (wrapperClass) { - let wrapper = new wrapperClass(this._client, device, this._connections); + let wrapper = new wrapperClass(this._client, device); this._addDeviceWrapper(wrapper); this._nmDevices.push(device); if (!skipSyncDeviceNames) this._syncDeviceNames(); + + this._connections.forEach(function(connection) { + wrapper.checkConnection(connection); + }); } },